Methods and systems for providing mobile customer support

ABSTRACT

Methods, systems, and computer program products are provided for mobile customer support. A customer service request is received at a mobile device from a user associated with the mobile device to access a customer service feature of an application associated with the mobile device. In response to the request, a user context is determined by at least one of saving a state of the application, storing data associated with the application or accessing user activity associated with the application. A communication request comprising the user context is sent to a customer service center (“CSC”) associated with the customer service feature. Communication between the CSC and the user is enabled, wherein the CSC accesses the user context and uses the user context during the communication.

FIELD OF INVENTIONS

The present disclosure generally relates to the field of providing acustomer service. More particularly, the disclosure relates to methods,systems and computer readable mediums for providing the customer serviceto a customer using a mobile device.

BACKGROUND OF THE INVENTIONS

Many business entities provide customer support services to ensurehigher customer satisfaction. Indeed, certain business entitiessometimes differentiate themselves from competition by having a bettercustomer support service. Business entities usually establish customerservice centers (CSCs) to provide customer support services. A typicalcustomer service center hosts a number of customer servicerepresentatives (CSRs) to assist customers with their requests andqueries. The business entities advertise their customer service numbersto the customers, which allows the customers to contact the customerservice centers.

However, it is often expensive to maintain CSCs. Further, many customersdesire support for routine queries or tasks, which do not necessarilyrequire a human CSR. Therefore, many business entities augment theircustomer support services with self-service options for customers. Theself-service options may include, for example, Interactive VoiceResponse (IVR) systems, customer service web portals, and mobile devicebased applications (or mobile applications).

Mobile applications allow the customer to self-service their requests orqueries using an interface on a mobile device. Mobile applications forself-servicing may be native applications residing on the mobile deviceand communicating with the business entity's database over a network.Alternatively, the business entity may expose a Wireless ApplicationProtocol (WAP) based self-service interface that customers can accessfrom a WAP browser on their mobile device. A customer may use the mobileapplication to authenticate herself, and use the self-servicing optionsprovided by the mobile application. If the customer finds theself-servicing options in the mobile application insufficient to addresstheir request or query satisfactorily, she may choose to call a CSRthrough an advertised customer service contact number. Upon calling thecustomer service contact number, the customer is usually requested tore-authenticate herself. In addition, the customer is often directed toan IVR that has similarly insufficient self-servicing options as themobile application. When the customer finally speaks with a CSR (e.g.,after navigating the IVR), she often restates her requests to the CSR.This leads to wasting the customer's time, and proves inefficient forthe business entity.

Given the foregoing, what is needed is a system, a method and a computerreadable medium for providing customer service through mobileapplications in a convenient and effective manner.

SUMMARY

The present disclosure meets the above-identified needs by providingmethods, systems, and non-transitory computer-readable mediums forproviding mobile customer support. In an exemplary embodiment, acustomer service request is received at a mobile device from a userassociated with the mobile device to access a customer service featureof an application associated with the mobile device. In response to therequest, in one embodiment, a user context is determined by at least oneof saving a state of the application, storing data associated with theapplication or accessing user activity associated with the application.A communication request comprising the user context is sent to acustomer service center (“CSC”) associated with the customer servicefeature. Communication between the CSC and the user is enabled, whereinthe CSC accesses the user context and uses the user context during thecommunication.

In various embodiments, the application may be installed in a memory ofthe mobile device. In some embodiments, accessing user activity mayinclude retrieving information from an activity log and/or a requestfile associated with the application. The method may include receiving arequest for authentication from the CSC.

In some embodiments, the method may include determining anauthentication context. In various embodiments, determining theauthentication context may include at least one of accessing a token,encrypting data, receiving user input, accessing mobile devicecharacteristics or accessing a user profile associated with at least oneof the mobile device or the application. The authentication context mayinclude a social security number, an account number, a useridentification number, a personal identification number, a password, atoken, a biometric, an authentication code associated with the mobiledevice, and/or an authentication code associated with the application.The authentication context may be determined in response to anauthentication request received from the CSC. The authentication contextmay be included in the communication request. In various embodiments,the CSC authenticates the communication request based upon theauthentication context.

In some embodiments, the communication includes voice communication,text message, video communication, audio-video communication, internetprotocol (IP) based chat, and/or voice over IP. Enabling thecommunication may include receiving a communication from the CSC.Enabling the communication may include initiating voice communicationwith the CSC. The voice communication may be initiated based upon atleast one of a phone number stored in the application, an instructionstored in the application, a phone number received from the CSC or aninstruction received from the CSC. The phone number may be determined atleast partially upon the user context, the authentication context, atime of day, a day of week, the application or a work load associatedwith the CSC.

In various embodiments, the communication between the CSC and the useroccurs without any input by the user. The communication between the CSCand the user may occur regardless of the user responding to voiceprompts, navigating menus, answering questions, entering data and/orwaiting on hold. The communication between the CSC and the user mayinclude communication between a customer service representative (CSR) ofthe CSC and the user, where the CSR may be presented with an interfaceshowing at least one of the customer context, the authentication contextor account information associated with the user. The method may includedetermining that the user does not have access to services of the CSCand enabling the communication may include at least one of displaying ahelp file, navigating to a web site or displaying a message.

Further features and advantages of the present disclosure as well as thestructure and operation of various embodiments of the present disclosureare described in detail below with reference to the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of the present disclosure will become moreapparent from the detailed description set forth below when taken inconjunction with the drawings in which like reference numbers indicateidentical or functionally similar elements.

FIG. 1 is an exemplary environment in which a customer support systemmay be deployed, according to an embodiment;

FIG. 2A is a schematic illustration of an exemplary user interface on amobile device, according to one embodiment;

FIG. 2B is a schematic illustration of another exemplary user interface,according to another embodiment;

FIG. 2C is a schematic illustration of yet another exemplaryimplementation of the user interface, according to another embodiment;

FIG. 3 is a flow chart illustrating one example process for providingcustomer service on a mobile device, according to one embodiment; and

FIG. 4 is a block diagram of an exemplary computer system forimplementing the present disclosure.

DETAILED DESCRIPTION I. Overview

The detailed description of exemplary embodiments herein makes referenceto the accompanying drawings and pictures, which show the exemplaryembodiment by way of illustration and its best mode. While theseexemplary embodiments are described in sufficient detail to enable thoseskilled in the art to practice the disclosure, it should be understoodthat other embodiments may be realized and that logical and mechanicalchanges may be made without departing from the spirit and scope of thedisclosure. Thus, the detailed description herein is presented forpurposes of illustration only and not of limitation. For example, thesteps recited in any of the method or process descriptions may beexecuted in any order and are not limited to the order presented.Moreover, any of the functions or steps may be outsourced to orperformed by one or more third parties. Furthermore, any reference tosingular includes plural embodiments, and any reference to more than onecomponent may include a singular embodiment.

Systems, methods and computer program products are provided. In thedetailed description herein, references to “one embodiment”, “anembodiment”, “an example embodiment”, etc., indicate that the embodimentdescribed may include a particular feature, structure, orcharacteristic, but every embodiment may not necessarily include theparticular feature, structure, or characteristic. Moreover, such phrasesare not necessarily referring to the same embodiment. Further, when aparticular feature, structure, or characteristic is described inconnection with an embodiment, it is submitted that it is within theknowledge of one skilled in the art to effect such feature, structure,or characteristic in connection with other embodiments whether or notexplicitly described. After reading the description, it will be apparentto one skilled in the relevant art(s) how to implement the disclosure inalternative embodiments.

For the sake of brevity, conventional data networking, applicationdevelopment and other functional aspects of the systems (and componentsof the consumer operating components of the systems) may not bedescribed in detail herein. Furthermore, the connecting lines shown inthe various figures contained herein are intended to represent exemplaryfunctional relationships and/or physical couplings between the variouselements. It should be noted that many alternative or additionalfunctional relationships or physical connections may be present in apractical system.

The present disclosure is described herein with reference to systemarchitecture, block diagrams and flowchart illustrations of methods, andcomputer program products according to various aspects of thedisclosure. It will be understood that each functional block of theblock diagrams and the flowchart illustrations, and combinations offunctional blocks in the block diagrams and flowchart illustrations,respectively, can be implemented by computer program instructions.

These computer program instructions may be loaded onto a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructionsthat execute on the computer or other programmable data processingapparatus create means for implementing the functions specified in theflowchart block or blocks. These computer program instructions may alsobe stored in a computer-readable memory that can direct a computer orother programmable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function specified in the flowchart block or blocks.The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart block or blocks.

Accordingly, functional blocks of the block diagrams and flow diagramillustrations support combinations of means for performing the specifiedfunctions, combinations of steps for performing the specified functions,and program instruction means for performing the specified functions. Itwill also be understood that each functional block of the block diagramsand flowchart illustrations, and combinations of functional blocks inthe block diagrams and flowchart illustrations, can be implemented byeither special purpose hardware-based computer systems which perform thespecified functions or steps, or suitable combinations of specialpurpose hardware and computer instructions. Further, illustrations ofthe process flows and the descriptions thereof may make reference touser windows, web pages, websites, web forms, prompts, etc.Practitioners will appreciate that the illustrated steps describedherein may comprise in any number of configurations including the use ofwindows, web pages, hypertexts, hyperlinks, web forms, popup windows,prompts and the like. It should be further appreciated that the multiplesteps as illustrated and described may be combined into single web pagesand/or windows but have been expanded for the sake of simplicity. Inother cases, steps illustrated and described as single process steps maybe separated into multiple web pages and/or windows but have beencombined for simplicity.

In an embodiment, various components, modules, and/or engines of thesystem may be implemented as micro-applications or micro-apps.Micro-apps are typically deployed in the context of a mobile operatingsystem, including for example, a Palm mobile operating system, a Windowsmobile operating system, an Android Operating System, Apple iOS, aBlackberry operating system and the like. The micro-app may beconfigured to leverage the resources of the larger operating system andassociated hardware via a set of predetermined rules which govern theoperations of various operating systems and hardware resources. Forexample, where a micro-app desires to communicate with a device ornetwork other than the mobile device or mobile operating system, themicro-app may leverage the communication protocol of the operatingsystem and associated device hardware under the predetermined rules ofthe mobile operating system. Moreover, where the micro-app desires aninput from a user, the micro-app may be configured to request a responsefrom the operating system which monitors various hardware components andthen communicates a detected input from the hardware to the micro-app.

As used herein, the term “network” includes any cloud, cloud computingsystem or electronic communications system or method which incorporateshardware and/or software components. Communication among the parties maybe accomplished through any suitable communication channels, such as,for example, a telephone network, an extranet, an intranet, Internet,point of interaction device (point of sale device, personal digitalassistant (e.g., iPhone®, Palm Pilot®, Blackberry®), cellular phone,kiosk, etc.), online communications, satellite communications, off-linecommunications, wireless communications, transponder communications,local area network (LAN), wide area network (WAN), virtual privatenetwork (VPN), networked or linked devices, keyboard, mouse and/or anysuitable communication or data input modality. Moreover, although thesystem is frequently described herein as being implemented with TCP/IPcommunications protocols, the system may also be implemented using IPX,Appletalk, IP-6, NetBIOS, OSI, any tunneling protocol (e.g. IPsec, SSH),or any number of existing or future protocols. If the network is in thenature of a public network, such as the Internet, it may be advantageousto presume the network to be insecure and open to eavesdroppers.Specific information related to the protocols, standards, andapplication software utilized in connection with the Internet isgenerally known to those skilled in the art and, as such, need not bedetailed herein. See, for example, DILIP NAIK, INTERNET STANDARDS ANDPROTOCOLS (1998); JAVA 2 COMPLETE, various authors, (Sybex 1999);DEBORAH RAY AND ERIC RAY, MASTERING HTML 4.0 (1997); and LOSHIN, TCP/IPCLEARLY EXPLAINED (1997) and DAVID GOURLEY AND BRIAN TOTTY, HTTP, THEDEFINITIVE GUIDE (2002), the contents of which are hereby incorporatedby reference.

The various system components may be independently, separately orcollectively suitably coupled to the network via data links whichincludes, for example, a connection to an Internet Service Provider(ISP) over the local loop as is typically used in connection withstandard modem communication, cable modem, Dish networks, ISDN, DigitalSubscriber Line (DSL), or various wireless communication methods, see,e.g., GILBERT HELD, UNDERSTANDING DATA COMMUNICATIONS (1996), which ishereby incorporated by reference. It is noted that the network may beimplemented as other types of networks, such as an interactivetelevision (ITV) network. Moreover, the system contemplates the use,sale or distribution of any goods, services or information over anynetwork having similar functionality described herein.

The system contemplates uses in association with web services, utilitycomputing, pervasive and individualized computing, security and identitysolutions, autonomic computing, cloud computing, commodity computing,mobility and wireless solutions, open source, biometrics, grid computingand/or mesh computing.

“Cloud” or “Cloud computing” includes a model for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, servers, storage, applications, and services)that can be rapidly provisioned and released with minimal managementeffort or service provider interaction. Cloud computing may includelocation-independent computing, whereby shared servers provideresources, software, and data to computers and other devices on demand.For more information regarding cloud computing, see the NIST's (NationalInstitute of Standards and Technology) definition of cloud computing athttp://csrc.nist.gov/groups/SNS/cloud-computing/cloud-def-v15.doc (lastvisited Feb. 4, 2011), which is hereby incorporated by reference in itsentirety.

The present disclosure is directed to systems, methods and computerprogram products for providing customer service on a mobile device of acustomer. The mobile device includes an application for enabling thecustomer to access various customer service features. The applicationpresents a user interface having one or more customer service featuresthat the customer can access. The application may be downloadable from adomain, which hosts the application, and can be installed on the mobiledevice. The application and/or the mobile device may track thecustomer's activity with the application and may record the customer'sactivity information as a part of user's context. The application mayfurther store the customer's authentication context. The authenticationcontext includes information that the customer may use forauthenticating with the application and/or a customer service center.The mobile device receives a customer service request from the customerto access the customer service features of the CSC. The mobile devicesends a communication request to the CSC. The communication requestincludes the user context having the customer's activity information.The mobile device may also send the authentication context in thecommunication request. The mobile device enables the communicationbetween the CSC and the customer. In one example, a CSR communicateswith the customer. The CSR uses the user's context during thecommunication. Thus, the customer may not be required to enter herauthentication information and/or the context during the communication,thereby allowing the CSR to serve the customer in a better and effectivemanner. Consequently, the customer's satisfaction increases.

In various embodiments, the application presents a user interfaceelement, for example, a “click to talk” button, to the customer wishingto communication with the CSC. The user interface element may beprovided depending upon one or more criteria. Alternatively, the userinterface element may be presented to the customer irrespective of thecustomer satisfying any of the criteria. Further, the communication maybe initiated by the mobile device and/or by the CSC. Various modes ofcommunication are contemplated herein including, without limitation,voice communication, text messages, video communication, audio-videocommunication, internet protocol (IP) based chat, voice over IP and/orthe like.

Terminology

A “customer or user” is any entity, including an individual or a groupof individuals, using a service or a product and seeking regulardetails, updates and servicing related queries by interacting with acustomer service center. One example of such entity is an AmericanExpress credit card holder or any card holder that maintains atransaction account and desires customer service about the account usinga mobile device.

Phrases and terms similar to an “item”, “product” or “service” may beused interchangeably and include any good, service, information,experience, data, content, access, rental, lease, contribution, account,credit, debit, benefit, right, reward, points, coupons, credits,monetary equivalent, anything of value, something of minimal or novalue, monetary value, non-monetary value and/or the like.

A “service provider” generically refers to any provider offering one ormore products and/or services to a plurality of customers. In oneembodiment, the service provider may be an individual, a group ofindividuals, a corporate firm, government organization and the like.

The present disclosure is now described in more detail herein in termsof the above disclosed exemplary embodiments of system, processes andcomputer program products. This is for convenience only and is notintended to limit the application of the present disclosure. In fact,after reading the following description, it will be apparent to oneskilled in the relevant art(s) how to implement the following disclosurein alternative embodiments.

II. System

FIG. 1 illustrates a system 100 in which various embodiments may bedeployed. System 100 includes a mobile device 102 of a customer, aCustomer Service Center (CSC) 104, and a communication network 106. CSC104 may include a mobile server 108, a customer database 110, and atleast one CSR terminal 112. In an embodiment, CSC 104 is deployed by aservice provider or by a third party on the service provider's behalf.The service provider may be, for example, a credit card serviceprovider, a banking service provider, a product manufacturer, a thirdparty service provider, and the like. Though mobile server 108 andcustomer database 110 are shown to be co-located with CSR terminal 112,it need not be so. Either mobile server 108 or customer database 110 orboth may be deployed at a location remote to CSR terminals 112.

Communication network 106 provides a communication link between CSC 104and mobile device 102 of the customer. Communication network 106 iscapable of providing the voice and data communications capabilities.Examples of communication network 106 may include, but are not limitedto, a wide area network (WAN), a local area network (LAN), an Ethernet,Internet, an Intranet, a cellular network, a satellite network, PublicSwitched Telephony Network (PSTN) or any other suitable network fortransmitting data/voice. Communication network 106 may be implemented asa wired network, or a wireless network or a combination thereof.

Mobile device 102 may include any hardware and/or software suitablyconfigured to facilitate user input, communication with CSC 104, displayinformation related to customer service features or any informationdiscussed herein. As those skilled in the art will appreciate, mobiledevice 102 may include an operating system (for example, Symbian,Android, iOS, BlackBerry OS, Windows Mobile, Windows Phone, Linux,WebOS, Bada, etc.) as well as various conventional support software anddrivers typically associated with mobile devices. Further, mobile device102 may include a smart phone, a mobile phone, a Personal DigitalAssistant (PDA), a pocket PC, a laptop, a tablet PC or the like.Furthermore, mobile device 102 may be in a home or business environmentwith access to a network. In an exemplary embodiment, access is througha network or the Internet through a commercially available web-browsersoftware package. In one embodiment, access to the Internet isconnection is through an application loaded on the device with aninternet connection (3G/4G).

Mobile device 102 is also capable of executing an application associatedwith mobile device 102. According to one embodiment, the application mayallow the customer to perform various tasks including, withoutlimitation, access various services (for example, banking services,managing transaction accounts, paying bills, travel-related servicesetc.) via a network, such as, network 106. In some embodiments, theapplication may be a customer service application enabling the customerto self-service various products/services. In various embodiments, auser interface may be provided on mobile device 102 of the customer bythe application. In one embodiment, the application may be a nativeapplication residing on mobile device 102 specific to the serviceprovider. The native application may be downloaded from the serviceprovider website or from a third party domain associated with theservice provider. In an alternate embodiment, the application may be aWAP browser-enabled application and may be access by a WAP browserresiding on mobile device 102. The WAP browser-enabled application maybe hosted by the service provider or by a third party, according to oneembodiment.

In various embodiments, the customer may authenticate herself to accessvarious service features of the application. The customer may registerwith mobile server 108 while downloading the application on mobiledevice or at the first instance of accessing the user interface onmobile device 102. The customer may be requested to provide basicdetails at the time of registration. The basic details may varydepending upon the nature of the service. For example, if theapplication relates to managing transaction accounts, customers may berequested to fill in details such as, for example, credit cardnumber(s), associated expiry date, billing address, contact details,social security number, other customer identifiable information or thelike. In another example, if the application is a customer serviceapplication for self-servicing a laptop, customers may provide details,such as, without limitation, a vendor's name, model name, model number,model version, unique identification number of the laptop, customer ID,date of purchase, address of store, mode of purchase, payment details orthe like. Once these details are provided, mobile server 108 maygenerate a username for the customer. Alternatively, mobile server 108may prompt the customer to select a username. Further, mobile server 108determines authentication credentials for the customer to authenticatethe customer for future access to the user interface. The authenticationcredentials may include, without limitation, at least one of a socialsecurity number, an account number, a user identification number, apersonal identification number, a password, a token, a biometric, anauthentication code associated with the mobile device, an authenticationcode associated with the application and the like. In an embodiment, thecustomer may enter appropriate authentication credentials. For example,the customer may choose a password and register the password with mobileserver 108. In another example, the customer may enter a biometric, suchas a fingerprint as the authentication credential. In this case, mobiledevice 102 may include or may be configured to be connected to suitablehardware to allow the customer to enter the biometric. In anotherembodiment, mobile server 108 may generate the authenticationcredentials, for example, a random password, a unique authenticationcode associated with the application or the like. A number of techniquesfor authenticating the customer using mobile device 102 are known in theart. It will be apparent to a person skilled in the art that any ofthese techniques may be used in conjunction with the present disclosure.In one embodiment, the application stores authentication contextincluding the authentication credentials, of the customer on a localmemory of mobile device 102. Alternatively, or in addition, theauthentication context may also be stored remotely, for example, oncustomer database 110.

Again, referring to the FIG. 1, the user interface provided on mobiledevice 102 is configured to display options to access one or morecustomer service features of the application. For example, in anapplication for managing a transaction account, customer servicefeatures may include viewing an account summary, inquiring about thepayment balance, line of credit, new account application etc., whichallow the customer to self-service her support needs. In an applicationfor accessing banking services, the customer service features mayinclude, viewing transaction details, viewing monthly statements, payingutility bills, money transfer or the like. In one embodiment, the userinterface displays the options in a graphical user interface (GUI)format and the customer can access them by selecting and clicking ondesired option(s).

In response to the customer's interactions on the user interface, theapplication may communicate with mobile server 108 over communicationnetwork 106. In various embodiments, the interactions on the userinterface may represent one or more requests from the customer. Forexample, if the customer selects to view the account summary of hercredit card, the application may send a request to mobile server 108.Mobile server 108 may interact with appropriate database, for example,customer database 110 to prepare a response. In the current example,mobile server 108 retrieves the customer's account summary from customerdatabase 110 and send the account summary to the application overcommunication network 106. The application may then display the responseto the customer on the user interface appropriately. In variousembodiments, customer database 110 may be deployed by the serviceprovider or a third party.

In an embodiment, the application tracks the customer's activity, suchas, for example, customer service features accessed by the customer,requests sent to mobile server 108, responses to the customer'srequests, customer service options presented on the user interface orthe like. For example, the customer activity may include informationsuch as, the customer first selected to view account summary, and thenmade payment balance enquiry followed by browsing through variouspayment options, attempted to pay her current balance through onlinemoney transfer, though received an error in doing that. A person skilledin the art will recognize similar examples based upon a deploymentscenario. In one embodiment, the application stores the customer'sactivity on a memory local to mobile device 102. The application mayperiodically send the customer activity information to mobile server108, which then may store the information on customer database 110.

Further, the application may also present a user-interface element,which provides the customer an option to communicate with CSC 104. Invarious embodiments, the user-interface element is a “click to talk”option displayed on the user interface along with other customer serviceoptions. In an embodiment, the user-interface element is displayed basedon one or more pre-defined conditions. The one or more pre-definedconditions may include, but are not limited to, the number ofinteractions that the customer has performed with the application in asingle session, the customer tier, the level of information requested bythe customer or the like. For example, if the customer is a premiumcustomer, the application may display the user-interface elementirrespective of the customer's interaction with the application.However, in case of a non-premium customer, until the customer completesa pre-defined limit of the self-service interactions with theuser-interface, the user-interface element may not be displayed.

Upon selection of the user-interface element, a customer service requestmay be triggered. Mobile device 102 and/or the application receive thecustomer service request. In response to receiving the customer servicerequest, mobile device 102 may determine a user context. In oneembodiment, mobile device 102 may save a state of the application as theuser context. In another embodiment, mobile device 102 may save dataassociated with the application as the user context. In yet anotherembodiment, mobile device 102 may access the user activity informationand save it as the user context. In a further embodiment, mobile device102 may perform any combination of aforementioned steps to determine theuser context.

Mobile device 102 may then send a communication request to mobile server108. In one embodiment, mobile device 102 sends the communicationrequest to mobile server 108. The communication request includes theuser context. In one embodiment, the communication request may alsoinclude authentication context. The authentication context may include,without limitation, at least one of a social security number, an accountnumber, a user identification number, a personal identification number,a password, a token, a biometric, an authentication code associated withthe mobile device, an authentication code associated with theapplication and the like. Mobile device 102 may determine theauthentication context by performing one or more of accessing a token,receiving user input, accessing mobile device characteristics, accessinga customer profile associated with mobile device 102, the application orboth, or the like. In one embodiment, mobile device 102 may determinethe authentication context in response to an authentication requestreceived from mobile server 108. Mobile server 108 may send theauthentication request in response to receiving the communicationrequest or as a part of authentication process when the customer wantsto access the application.

Mobile device 102 enables communication between the customer and CSC104. In various embodiments, the communication occurs between thecustomer and a CSR. In one embodiment, mobile server 108 mayauthenticate the communication based upon the authentication context. Inone embodiment, the communication is voice communication. In otherembodiments, the communication may also be video communication, textmessage, audio-video communication, internet protocol (IP) based chat,voice over IP or the like.

In one embodiment, the communication may be initiated by theapplication. For example, when the customer clicks on “click-to-talk”button, the application may obtain a phone number of CSC 104. Theapplication then places a phone call to CSC 104 using mobile device 102.In one embodiment, the phone number may be stored in the application ormay be dynamically determined by the application using instructionsstored in the application. The instructions may also be received frommobile server 108. In some embodiments, the phone number may be receivedfrom mobile server 108. The phone number may be determined using one ormore factors. Examples of the factors include, but are not limited to,the user context, the authentication context, a time of day, a day ofweek, the application, customer's geographic location, the application,a work load associated with CSC 104, customer's preferences and thelike. For example, if the user is in USA, the application and/or the CSCmay select a US phone number; on the other hand, if the user is inGermany, a phone number may correspond to a Germany-based CSC or a CSCthat serves customers residing in Germany. In another example, the phonenumber may be determined based upon the customer's preferences, such as,language preferences, so that the customer communicates with a CSRproficient in the customer's language preference. In additionalexamples, the phone number may be different for weekends as opposed toweekdays.

When the communication is enabled between CSC 104 and the customer, CSC104 accesses the user context and uses the user context to service thecustomer appropriately. For example, if the user context indicates thatthe customer was trying to view various payment options for hertransaction account when the communication was established, CSC 104 mayinform the customer of the payment options during the communication.

In various embodiments, the communication occurs between the customerand a CSR. In this case, at least one of the user context, theauthentication context, or account information of the customer may bepresented on corresponding CSR terminal, for example, CSR terminal 112,with an interface. The CSR may then use this information to serve thecustomer.

Thus, the customer is not required to go through conventionalinteractive voice response (IVR) systems and gets directly connectedwith appropriate CSC 104 and/or CSR. Moreover, the user context providedto the CSR on CSR terminal 112 enables the CSR to acquire the knowledgeof the customer's interactions on the user-interface. This may help theCSR to resolve the customer's request efficiently and within a shortperiod of time.

In additional embodiments, the communication may be initiated by CSC104. For example, CSC 104 may provide a callback option to the customer.In this case, when mobile device 102 sends the communication request tomobile server 108, mobile server 108 may establishes the communicationwith the customer. In one embodiment, mobile server 108 may initiate oneleg of a phone call to a number associated with the customer, initiateanother leg with CSR 112 and bridge the phone call. The call may beestablished with mobile device 102 or with any other number provided bythe customer. In one example implementation, the customer may beprovided prior intimation of time when this communication may beestablished.

In some embodiments, the communication between the customer and CSC 104occurs automatically without any input from the customer. In furtherembodiments, the communication may be initiated without requiring thecustomer to respond to voice prompts, navigate menus, answer questions,enter data, wait on hold, or any combination thereof.

In accordance with one embodiment, the application determines whetherthe customer does not have access to services of CSC 104, for example,when the communication cannot be established or when CSR 112 etc., theapplication may display a help file corresponding to the customerservice request to the customer. Alternatively, the application may leadthe customer to an associated website or display a message.

CSR terminal 112 may include any hardware and/or software suitablyconfigured to facilitate communication with customers over a network,providing customer service, receiving inputs, presenting informationrelated to the customer context, the authentication context, the accountinformation of the customers, or any information discussed herein. Asthose skilled in the art will appreciate, CSR terminal 112 may includean operating system (e.g., Windows NT, 95/98/2000, OS2, UNIX, Linux,Solaris, MacOS, etc.) as well as various conventional support softwareand drivers typically associated with computers. Further, CSR terminal112 may include any suitable personal computer, network computer,workstation, minicomputer, mainframe, thin client or the like.

Mobile server 108 may include any hardware and/or software suitablyconfigured to facilitate communication with customers over a network,receiving, processing and responding to requests, accessing andpresenting information related to the customer context, theauthentication context, the account information of the customers, or anyinformation discussed herein. As those skilled in the art willappreciate, mobile server 108 may include an operating system (e.g.,Windows NT, 95/98/2000, OS2, UNIX, Linux, Solaris, MacOS, etc.) as wellas various conventional support software and drivers typicallyassociated with computers. Further, mobile server 108 may take the formof a computer or a set of computers, although other types of computingunits or systems may be used, including workstations, computer-servers,main frame computers, PC servers, pervasive computers, network sets ofcomputers, and/or the like.

Customer database 110 stores customer specific information. The customerspecific information may include customer's personal information (forexample, name, address, telephone number, e-mail address, gender, age,income, family information, education etc.), login ID, authenticationcredentials, customer's preferences, and/or the like. Customer database110 may also store product/service specific information for thecustomers. For example, information for a transaction account serviceprovider may include transaction account numbers, expiry dates,transaction history, transaction details, billing information or like.Customer database 110 may further store information such as, withoutlimitation, the customer's activity with the application, customerservice features accessed by the customers, details regarding thecustomer service requests and associated responses, log of thecommunication between the customer and CSC 104, and/or the like.

Customer database 110 may employ any type of database, such asrelational, hierarchical, graphical, object-oriented, and/or otherdatabase configurations. Common database products that may be used toimplement the databases include DB2 by IBM (White Plains, N.Y.), variousdatabase products available from Oracle Corporation (Redwood Shores,Calif.), Microsoft Access or Microsoft SQL Server by MicrosoftCorporation (Redmond, Wash.), or any other suitable database product.Moreover, the databases may be organized in any suitable manner, forexample, as data tables or lookup tables. Each record may be a singlefile, a series of files, a linked series of data fields or any otherdata structure. Association of certain data may be accomplished throughany desired data association technique such as those known or practicedin the art. For example, the association may be accomplished eithermanually or automatically. Automatic association techniques may include,for example, a database search, a database merge, GREP, AGREP, SQL,using a key field in the tables to speed searches, sequential searchesthrough all the tables and files, sorting records in the file accordingto a known order to simplify lookup, and/or the like. The associationstep may be accomplished by a database merge function, for example,using a “key field” in pre-selected databases or data sectors.

More particularly, a “key field” partitions the database according tothe high-level class of objects defined by the key field. For example,certain types of data may be designated as a key field in a plurality ofrelated data tables and the data tables may then be linked on the basisof the type of data in the key field. The data corresponding to the keyfield in each of the linked data tables is preferably the same or of thesame type. However, data tables having similar, though not identical,data in the key fields may also be linked by using AGREP, for example.In accordance with one aspect of the disclosure, any suitable datastorage technique may be utilized to store data without a standardformat. Data sets may be stored using any suitable technique, including,for example, storing individual files using an ISO/DEC 7816-4 filestructure; implementing a domain whereby a dedicated file is selectedthat exposes one or more elementary files containing one or more datasets; using data sets stored in individual files using a hierarchicalfiling system; data sets stored as records in a single file (includingcompression, SQL accessible, hashed via one or more keys, numeric,alphabetical by first tuple, etc.); Binary Large Object (BLOB); storedas ungrouped data elements encoded using ISO/IEC 7816-6 data elements;stored as ungrouped data elements encoded using ISO/IEC Abstract SyntaxNotation (ASN.1) as in ISO/IEC 8824 and 8825; and/or other proprietarytechniques that may include fractal compression methods, imagecompression methods, etc.

In one exemplary embodiment, the ability to store a wide variety ofinformation in different formats is facilitated by storing theinformation as a BLOB. Thus, any binary information can be stored in astorage space associated with a data set. As discussed above, the binaryinformation may be stored on the financial transaction instrument orexternal to but affiliated with the financial transaction instrument.The BLOB method may store data sets as ungrouped data elements formattedas a block of binary via a fixed memory offset using one of fixedstorage allocation, circular queue techniques, or best practices withrespect to memory management (e.g., paged memory, least recently used,etc.). By using BLOB methods, the ability to store various data setsthat have different formats facilitates the storage of data associatedwith the system by multiple and unrelated owners of the data sets. Forexample, a first data set which may be stored may be provided by a firstparty, a second data set which may be stored may be provided by anunrelated second party, and yet a third data set which may be stored,may be provided by an third party unrelated to the first and secondparty. Each of these three exemplary data sets may contain differentinformation that is stored using different data storage formats and/ortechniques. Further, each data set may contain subsets of data that alsomay be distinct from other subsets.

As stated above, in various embodiments of customer database 110, thedata can be stored without regard to a common format. However, in oneexemplary embodiment, the data set (e.g., BLOB) may be annotated in astandard manner when provided for manipulating the data onto thefinancial transaction instrument. The annotation may comprise a shortheader, trailer, or other appropriate indicator related to each data setthat is configured to convey information useful in managing the variousdata sets. For example, the annotation may be called a “conditionheader”, “header”, “trailer”, or “status”, herein, and may comprise anindication of the status of the data set or may include an identifiercorrelated to a specific issuer or owner of the data. In one example,the first three bytes of each data set BLOB may be configured orconfigurable to indicate the status of that particular data set; e.g.,LOADED, INITIALIZED, READY, BLOCKED, REMOVABLE, or DELETED. Subsequentbytes of data may be used to indicate for example, the identity of theissuer, user, transaction/membership account identifier or the like.Each of these condition annotations are further discussed herein.

The data set annotation may also be used for other types of statusinformation as well as various other purposes. For example, the data setannotation may include security information establishing access levels.The access levels may, for example, be configured to permit only certainindividuals, levels of employees, companies, or other entities to accessdata sets, or to permit access to specific data sets based on thecustomer service request, service provider, customers or the like.Furthermore, the security information may restrict/permit only certainactions such as accessing, modifying, and/or deleting data sets. In oneexample, the data set annotation indicates that only the data set owneror the user are permitted to delete a data set, various identified usersmay be permitted to access the data set for reading, and others arealtogether excluded from accessing the data set. However, other accessrestriction parameters may also be used allowing various entities toaccess a data set with various permission levels as appropriate. Thedata, including the header or trailer may be received by a stand-aloneinteraction device configured to add, delete, modify, or augment thedata in accordance with the header or trailer. As such, in oneembodiment, the header or trailer is not stored on the transactiondevice along with the associated issuer-owned data but instead theappropriate action may be taken by providing to the transactioninstrument user at the stand-alone device, the appropriate option forthe action to be taken. Customer 110 contemplates a data storagearrangement wherein the header or trailer, or header or trailer history,of the data is stored on the transaction instrument in relation to theappropriate data. One skilled in the art will also appreciate that, forsecurity reasons, any databases, systems, devices, servers or othercomponents of customer database 110 may consist of any combinationthereof at a single location or at multiple locations, wherein eachdatabase or system includes any of various suitable security features,such as firewalls, access codes, encryption, decryption, compression,decompression, and/or the like. Encryption may be performed by way ofany of the techniques now available in the art or which may becomeavailable—e.g., Twofish, RSA, El Gamal, Schorr signature, DSA, PGP, PKI,and symmetric and asymmetric cryptosystems.

The disclosure may be described herein in terms of functional blockcomponents, screen shots, optional selections and various processingsteps. It should be appreciated that such functional blocks may berealized by any number of hardware and/or software components configuredto perform the specified functions. For example, system 100 may employvarious integrated circuit components, e.g., memory elements, processingelements, logic elements, look-up tables, and/or the like, which maycarry out a variety of functions under the control of one or moremicroprocessors or other control devices. Similarly, the softwareelements of system 100 may be implemented with any programming orscripting language such as C, C++, Java, COBOL, assembler, PERL, VisualBasic, SQL Stored Procedures, extensible markup language (XML), with thevarious algorithms being implemented with any combination of datastructures, objects, processes, routines or other programming elements.Further, it should be noted that system 100 may employ any number ofconventional techniques for data transmission, signaling, dataprocessing, network control, and/or the like. Still further, system 100could be used to detect or prevent security issues with a client-sidescripting language, such as JavaScript, VBScript or the like.

These software elements may be loaded onto a general purpose computer,special purpose computer, or other programmable data processingapparatus to produce a machine, such that the instructions that executeon the computer or other programmable data processing apparatus createmeans for implementing the functions specified in the flowchart block orblocks. These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function specified in the flowchart block or blocks.The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart block or blocks.

FIGS. 2A, 2B and 2C are schematic illustrations of an exemplaryimplementation of a user interface presented by the application onmobile device 102, according to one embodiment. Referring to the FIG.2A, the application provides a user interface 202 on mobile device 102,according to one embodiment. In an embodiment, to initiate a session ofon mobile device 102, user interface 202 shows an authentication screenfor entering a customer ID and a password. In various other embodimentsthe customer ID and/or password may include a unique combination ofcustomer's identifiable characteristics/authentication credentials,selected by the customer and/or provided by mobile server 108 at thetime of the registration process. In an embodiment, in response toentering the customer ID and the password, the application communicateswith mobile server 108 over communication network 106 to authenticatethe customer. A person skilled in the art will appreciate that otherauthentication techniques may similarly be used to authenticate thecustomer.

Referring to FIG. 2B, the application may display one or more customerservice features 204 in user interface 202 on mobile device 102. In anexemplary embodiment, customer service features 204 may include serviceprovider specific information. For example, in case of a credit cardcustomer, customer service option 204 may include, account summary,transaction, updates, help or the like. In response to the customer'sinteractions with customer service features 204, the application onmobile device 102 interacts with mobile server 108 to retrievecorresponding information. The application stores the customer'sactivity as part of the customer context either locally on mobile device102, or remotely on customer database 110, or both.

Referring to FIG. 2C, user interface 202 may also display a “click totalk” option 206 along with customer service features 204. “Click totalk” option 206 enables to customer to establish a communication withCSC 104. In this example implementation, the communication may be avoice communication. However, a person skilled in the art willappreciate that this is for illustration purpose only and suitable userinterface elements may be presented on the user interface to enable thecustomer to establish the communication with the CSC via other modes,such as, without limitation, text messages, video communication,audio-video communication, internet protocol (IP) based chat, voice overIP and/or the like. In an embodiment, “click to talk” option 206 may bedisplayed in response to a certain degree of self-servicing done by thecustomer, for example, “click to talk” option 206 may be presented onlywhen the customer has accessed a particular service option for more thana threshold duration in a given session, the customer has browsedthrough “help” service option, the customer has performed at leastpre-defined number of transactions without resolving her query or thelike. In other embodiments, “click to talk” option 206 may be displayedto the customer irrespective of the customer performs any activity withthe application. In response of exercising “click to talk” option 206,mobile device 102 initiates a customer service request and communicationmay be established between the customer and CSC 104, in accordance withvarious embodiments presented herein. In one embodiment, thecommunication may be initiated by mobile device 102. In alternateembodiments, the communication may be initiated by CSC 104.

III. Process

FIG. 3 is a flowchart illustrating an example process 300 for providingcustomer support on a mobile device of a customer. In one embodiment,process 300 may be implemented on a customer's mobile device, forexample, mobile device 102. In step S302, a customer service request isreceived at the mobile device from the customer to access a customerservice feature of an application. In one embodiment, the application isinstalled in a memory of the mobile device. In another embodiment, theapplication may be accessed via a network using a WAP browser residingin the mobile device.

In one embodiment, the customer may be requested to authenticate herselfwith the application and/or with a Customer Service Center (CSC)associated with the application. In one example implementation, when theapplication receives the customer service request, the application mayforward the customer service request or any other request associatedwith the customer service request to the CSC. In response, the CSC maysend a request for authentication. The application receives theauthentication request and prompts the customer to enter desiredauthentication credentials. The authentication credentials may include,without limitation, at least one of a social security number, an accountnumber, a user identification number, a personal identification number,a password, a token, a biometric, an authentication code associated withthe mobile device, an authentication code associated with theapplication and the like. Once the customer is authenticatedsuccessfully, the customer may be able to access the customer servicefeature.

In step S304, a user context is determined in response to the request.The user context may include at least one of customer service featuresaccessed/browsed by the customer, respective timestamps, amount of timespent by the customer on each service option, any assistance provided tothe customer using a help section of the application, customer'sattempts to access any specific information using a customer servicefeatures and other similar interactions with the application. The usercontext may be built by tracking the customer's activity and saving itin a log file. In one embodiment, the user context may be determined bysaving a state of the application. In another embodiment, the usercontext may be determined by storing data associated with theapplication. In yet another embodiment, the user context may bedetermined by accessing user activity associated with the application.In one example implementation, the user activity with the applicationmay be retrieved from an activity log or from a request file associatedwith the application or both. The activity log may reside in the memoryof the mobile device. Alternatively, the activity log may be stored in adatabase remote from the mobile device and the mobile device may accessthe database via a network. Similarly, the request file may be storedlocally and/or remotely.

In step S306, a communication request is sent by the mobile device tothe CSC associated with the customer service request. The communicationrequest includes the user context. In one embodiment, the communicationrequest may further include an authentication context. Theauthentication context may include, without limitation, at least one ofa social security number, an account number, a user identificationnumber, a personal identification number, a password, a token, abiometric, an authentication code associated with the mobile device, anauthentication code associated with the application and the like. In oneembodiment, the authentication context may be determined upon receivingthe authentication request from the CSC. In another embodiment, theauthentication context may be determined when the communication requestis generated.

According to one embodiment, the authentication context may bedetermined by accessing the mobile device characteristics and retrievingrelevant information (for example, the authentication code associatedwith the mobile device) from the mobile device characteristics. Inanother embodiment, the authentication context may be determined byaccessing a user profile associated with the mobile device or theapplication or both. For example, the user profile may includeinformation such as, the user identification number, the account number,the social security number, the personal identification number etc. Inyet another embodiment, the authentication context may be determined byreceiving the authentication context via a user input. For example, theuser may enter one or more of the password, the user identificationnumber, the personal identification number, or the biometric. In afurther embodiment, the authentication context may be determined byaccessing a token. In yet another embodiment, the authentication contextmay be determined by encrypting data.

In step S308, communication between the CSC and the customer may beenabled by the mobile device. The communication may be a voicecommunication, a text message, a video communication, an audio-videocommunication, an internet protocol (IP) based chat, a voice over IP andthe like. The CSC may authorize the communication based upon theauthentication context. In one embodiment, the communication happensbetween a Customer Service Representative (CSR) and the customer. Inthis case, the CSR is presented with an interface showing at least oneof the customer context, the authentication context, account informationassociated with the customer and the like.

In one embodiment, the communication may be enabled by the mobiledevice, when the application initiates the communication, for example, avoice communication, with the CSC. The voice communication may beinitiated depending upon an instruction to initiate the voicecommunication. The instruction may be received from the CSC or may bestored in the application. According to one embodiment, the applicationinitiates the voice communication to a phone number, for example, to aphone number corresponding to the CSC. In one embodiment, the phonenumber may be stored in the application or the phone number may bereceived from the CSC. The phone number may be fixed or may bedetermined based upon one or more factors. Examples of the factorsinclude, but are not limited to, the user context, the authenticationcontext, a time of day, a day of week, the application, user'sgeographic location, the application, a work load associated with theCSC, user's preferences and the like. For example, if the user is inUSA, the application and/or the CSC may select a US phone number; on theother hand, if the user is in Germany, a phone number may correspond toa Germany-based CSC or a CSC that serves customers residing in Germany.In another example, the phone number may be determined based upon theuser's preferences, such as, language preferences, so that the customercommunicates with a CSR proficient in the customer's languagepreference. In additional examples, the phone number may be differentfor weekends as opposed to weekdays.

In various embodiments, the communication may be enabled upon receivinga communication from the CSC. For example, in response to receiving thecommunication request from the mobile device, the CSC may initiate thecommunication to a phone number associated with the mobile device or anyother phone number of the customer.

In accordance with one embodiment, the communication between the CSC andthe user occurs without any input by the customer. In anotherembodiment, the customer may have to provide an explicit input toinitiate the communication between the CSC and the customer. Thecustomer may provide the input, for example, by one or more of clickingon a soft button, selecting an option from a menu, pressing one or morekeys on the mobile device and the like.

In some embodiments, the communication occurs in response to thecustomer satisfying one or more conditions including, for example, thecustomer has navigated through a predefined number of menus, answeredone or more questions, entered desired data, responded to voice prompts,waited on hold for a certain duration and the like. Alternatively, thecommunication may occur regardless of whether the customer satisfies anyof the conditions.

When the customer does not have access to services of the CSC, a helpfile may be displayed to the customer or the customer is led to awebsite or a message is displayed to the customer to enable thecommunication.

IV. Example Implementations

The present disclosure (i.e., system 100, mobile device 102, process 300or any part(s) or function(s) thereof) may be implemented usinghardware, software or a combination thereof, and may be implemented inone or more computer systems or other processing systems. However, themanipulations performed by the present disclosure were often referred toin terms, such as comparing or checking, which are commonly associatedwith mental operations performed by a human operator. No such capabilityof a human operator is necessary, or desirable in most cases, in any ofthe operations described herein, which form a part of the presentdisclosure. Rather, the operations are machine operations. Usefulmachines for performing the operations in the present disclosure mayinclude general-purpose digital computers or similar devices.

In fact, in accordance with an embodiment, the present disclosure isdirected towards one or more computer systems capable of carrying outthe functionality described herein. An example of the computer systemsincludes a computer system 400, which is shown in FIG. 4.

The computer system 400 includes at least one processor, such as aprocessor 402. Processor 402 is connected to a communicationinfrastructure 404, for example, a communications bus, a cross over bar,a network, and the like. Various software embodiments are described interms of this exemplary computer system 400. After reading thisdescription, it will become apparent to a person skilled in the relevantart(s) how to implement the present disclosure using other computersystems and/or architectures.

The computer system 400 includes a display interface 406 that forwardsgraphics, text, and other data from the communication infrastructure 404(or from a frame buffer which is not shown in FIG. 4) for display on adisplay unit 408.

The computer system 400 further includes a main memory 410, such asrandom access memory (RAM), and may also include a secondary memory 412.The secondary memory 412 may further include, for example, a hard diskdrive 414 and/or a removable storage drive 416, representing a floppydisk drive, a magnetic tape drive, an optical disk drive, etc. Theremovable storage drive 416 reads from and/or writes to a removablestorage unit 418 in a well known manner. The removable storage unit 418may represent a floppy disk, magnetic tape or an optical disk, and maybe read by and written to by the removable storage drive 416. As will beappreciated, the removable storage unit 418 includes a computer usablestorage medium having stored therein, computer software and/or data.

In accordance with various embodiments, the secondary memory 412 mayinclude other similar devices for allowing computer programs or otherinstructions to be loaded into the computer system 400. Such devices mayinclude, for example, a removable storage unit 420, and an interface422. Examples of such may include a program cartridge and cartridgeinterface (such as that found in video game devices), a removable memorychip (such as an erasable programmable read only memory (EPROM), orprogrammable read only memory (PROM)) and associated socket, and otherremovable storage units 420 and interfaces 422, which allow software anddata to be transferred from the removable storage unit 420 to thecomputer system 400.

The computer system 400 may further include a communication interface424. The communication interface 424 allows software and data to betransferred between the computer system 400 and external devices.Examples of the communication interface 424 include, but may not belimited to a modem, a network interface (such as an Ethernet card), acommunications port, a Personal Computer Memory Card InternationalAssociation (PCMCIA) slot and card, and the like. Software and datatransferred via the communication interface 424 are in the form of aplurality of signals, hereinafter referred to as signals 426, which maybe electronic, electromagnetic, optical or other signals capable ofbeing received by the communication interface 424. The signals 426 areprovided to the communication interface 424 via a communication path(e.g., channel) 428. A communication path 428 carries the signals 426and may be implemented using wire or cable, fiber optics, a telephoneline, a cellular link, a radio frequency (RF) link and othercommunication channels.

In this document, the terms “computer program medium” and “computerusable medium” are used to generally refer to media such as theremovable storage drive 416, a hard disk installed in hard disk drive414, the signals 426, and the like. These computer program productsprovide software to the computer system 400. The present disclosure isdirected to such computer program products.

Computer programs (also referred to as computer control logic) arestored in the main memory 410 and/or the secondary memory 412. Computerprograms may also be received via the communication infrastructure 404.Such computer programs, when executed, enable the computer system 400 toperform the features of the present disclosure, as discussed herein. Inparticular, the computer programs, when executed, enable the processor402 to perform the features of the present disclosure. Accordingly, suchcomputer programs represent controllers of the computer system 400.

In accordance with an embodiment, where the disclosure is implementedusing software, the software may be stored in a computer program productand loaded into the computer system 400 using the removable storagedrive 416, the hard disk drive 414 or the communication interface 424.The control logic (software), when executed by the processor 402, causesthe processor 402 to perform the functions of the present disclosure asdescribed herein.

In another embodiment, the present disclosure is implemented primarilyin hardware using, for example, hardware components such as applicationspecific integrated circuits (ASIC). Implementation of the hardwarestate machine so as to perform the functions described herein will beapparent to persons skilled in the relevant art(s).

In yet another embodiment, the present disclosure is implemented using acombination of both the hardware and the software.

V. Conclusion

The various embodiments described above have been presented by way ofexample and not limitation. It will be apparent to persons skilled inthe relevant art(s) that various changes in form and detail can be madetherein (e.g., different hardware, communications protocols, and thelike) without departing from the spirit and scope of the presentdisclosure. Thus, the present disclosure should not be limited by any ofthe above-described exemplary embodiments, but should be defined only inaccordance with the following claims and their equivalents. It is alsoto be understood that the steps and processes recited in the claims neednot be performed in the order presented.

In addition, it should be understood that the attached drawings, whichhighlight the functionality and advantages of the present disclosure,are presented as illustrative examples. The architecture of the presentdisclosure is sufficiently flexible and configurable, such that it maybe utilized (and navigated) in ways other than that shown in thedrawings.

1-20. (canceled)
 21. A method, comprising: a mobile device presenting,via an application, a plurality of customer service features availableto a user; the mobile device receiving, via the application, a requestto establish a communication session with a customer service center(CSC); in response to the request: the mobile device accessing useractivity information of the application, wherein the user activityinformation identifies a particular one of the plurality of customerservice features as being viewed by the user when the request isreceived; and the mobile device establishing a wireless communicationbetween the user and the CSC, wherein the establishing includes sendingthe user activity information to the CSC.
 22. The method of claim 21,wherein the user activity information indicates that an error occurredassociated with the user viewing the particular customer servicefeature.
 23. The method of claim 22, wherein the activity informationidentifies multiple customer services features viewed by the user andindicates an ordering in which the customer service features wereviewed.
 24. The method of claim 21, further comprising: the mobiledevice tracking a duration that the user has viewed the particularfeature; and the mobile device permitting the user to submit the requestafter the duration satisfies a threshold duration.
 25. The method ofclaim 24, wherein the user activity information specifies the duration.26. The method of claim 21, wherein the wireless communication isestablished using a dynamically determined phone number.
 27. The methodof claim 26, wherein the phone number is determined based on a currentlocation of the mobile device.
 28. The method of claim 26, wherein thephone number is determined based on a current time.
 29. The method ofclaim 21, further comprising: the mobile device receiving, over awireless connection, a phone number of the CSC; and the mobile deviceusing the phone number to establish the wireless communication.
 30. Themethod of claim 21, wherein the application is accessible to the uservia a web browser of the mobile device.
 31. A non-transitory computerreadable medium having program instructions stored thereon, wherein theprogram instructions are executable by a mobile device to cause themobile device to perform operations comprising: receiving a request toestablish a voice communication with a customer service center (CSC) viaan application that provides a plurality of user features; storing useractivity information for the application, wherein the user activityinformation identifies a particular one of the plurality of userfeatures as currently being viewed by a user of the mobile device; andin response to the request: establishing the voice communication withthe CSC via the application; and conveying the user activity informationto the CSC.
 32. The computer readable medium of claim 31, wherein theoperations further comprise: displaying ones of the plurality of userfeatures on a display of the mobile device, wherein the displayed userfeatures includes a plurality of banking services.
 33. The computerreadable medium of claim 32, wherein the plurality of banking servicesincludes displaying an account balance for an account associated withthe user.
 34. The computer readable medium of claim 32, wherein theplurality of banking services includes displaying details about atransaction conducted by the user.
 35. The computer readable medium ofclaim 31, wherein the operations further comprise: prior to receivingthe request, storing authentication information for the user; and inresponse to the request, conveying the authentication information to theCSC.
 36. A method, comprising: a customer service center establishing aconnection with a mobile device, wherein the mobile device executes anapplication that provides a plurality of services to a user of themobile device; and the customer service center receiving, from theapplication of the mobile device, activity information about the userwith respect to the application, wherein the activity informationidentifies one or more of the plurality of services being used by theuser.
 37. The method of claim 36, wherein the activity informationincludes a timestamp identifying when the user began using a particularone of the plurality of services.
 38. The method of claim 36, whereinthe activity information indicates an error associated with a user usinga particular one of the plurality of services.
 39. The method of claim36, further comprising: the customer service center establishing theconnection via a phone number that is dynamically determined based onone or more criteria.
 40. The mobile device of claim 36, wherein theconnection is a voice over IP (VoIP) connection.